1. Field of the Invention
The present invention relates to a signal processing device, in particular, the present invention relates to a signal processing device and a velocity detecting device, each processing a two-phase signal from an encoder that detects a rotation angle of a motor and detecting a driving velocity (a rotation angular velocity) of the motor, as well as to a servomechanism controlling the driving velocity of the motor.
2. Description of Related Art
There has been known a servomechanism that controls a driving velocity (for instance, a relation velocity) of a motor (e.g. Document: JP-A-2004-5218).
As shown in FIG. 9, a conventional servomechanism 1 includes a motor 11 (an object to be controlled), an encoder 12 that detects a rotation position (a rotation angle) of the motor 11 and outputs a position data, and a controller 13 that calculates a motor rotation velocity based on the position data from, the encoder 12 and controls current to be applied to the motor 11 to achieve a target velocity.
The encoder 12 detects the rotation position (the rotation angle) of the motor 11, latches the detected value and outputs information on the rotation position of the motor 11 using an absolute code. The encoder 12 connects to the controller 13 via a serial communication line 14.
FIG. 10 shows a timing chart of rotation velocity control by the motor 11 in the servomechanism having the above-described configuration.
First, the controller 13 sends a command St for detecting the position to the encoder 12 via the serial communication line 14. Upon receiving the detection command S1, the encoder 12 detects the rotation position of the motor 11 (denoted as P0, P1, P2 in FIG. 10), latches the detected value, and outputs the position data of the motor 11 to the controller 13.
When receiving the rotation position data of the motor 11 from the encoder 12, the controller 13 controls the velocity of the motor 11 based on the motor rotation position. To be more specific, the controller 13 compares the motor rotation position currently received with the motor rotation position received one-cycle before, calculates the rotation velocity of the motor 11, and compares the calculated motor rotation velocity with the target velocity. Then, the controller 13 calculates an electric current value to be applied to the motor 11 corresponding to a difference between the motor velocity and the target velocity, and flows the current value by an electric current control amplifier to control the velocity of the motor 11.
The above control cycles are repeated, so that the rotation velocity of the motor 11 achieves the target velocity.
However, if the velocity control is based on such motor velocity calculated from the difference between the two pieces of motor rotation position data detected according to predetermined sampling cycles, the obtained velocity data is a mean velocity data of the velocity at the current control cycle and the velocity at one-cycle before. In other words, the velocity control may have time-lag (time-delay) of ½ of a sampling cycle T. The time-lag causes phase-delay of the control system, thus destabilizing the control.